<?php

define('SESSION_TIME',  3600);   //SESSION 生存时长 秒 600000

//session 初始化
Session::sessionStart();
//ini_set('session.cookie_domain', $global['domain']);
//header('P3P: CP="ALL ADM DEV PSAi COM OUR OTRo STP IND ONL"');
header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');
session_start();
//session_id('9u5ulc87fv0i6v8ba43470vne7');
/**
 * Session类
 *
 * @author 陈小飞
 * @version  2007-08-22
 * @copyright 陈小飞
 */
class Session {	
	   
	/**
	 * 构造函数
	 */
	function __construct() {	
				
	}//end __construct	

	
	/**
	 * session初始化
	 * @return void 如果已经登录则返回登录信息数组，否则返回false	 
	 * @access public	
	 */
	public static function sessionStart() {
				
				
        //不使用 GET/POST 变量方式
        ini_set('session.use_trans_sid',    0);
		
        //设置垃圾回收最大生存时间
        ini_set('session.gc_maxlifetime',   SESSION_TIME); 
		
        //使用 COOKIE 保存 SESSION ID 的方式
        ini_set('session.use_cookies',      1);
        ini_set('session.cookie_path',      '/');
		
        //多主机共享保存 SESSION ID 的 COOKIE
        ini_set('session.cookie_domain',    $GLOBALS['G']['cookie_domain']);
 
        //将 session.save_handler 设置为 user，而不是默认的 files
        session_module_name('user');
		
        //定义 SESSION 各项操作所对应的方法名：
        session_set_save_handler(
            array('Session', 'sessionOpen'),  
            array('Session', 'sessionClose'),
            array('Session', 'sessionRead'),
            array('Session', 'sessionWrite'),
            array('Session', 'sessionDestroy'),
            array('Session', 'sessionGC')
        );
		
	}//end sessionInit
	
	/**
	 * session 打开操作
	 * @return void 
	 * @access public	 
	 */
	public static function sessionOpen($save_path, $session_name) {
	//echo 'o'.$session_name;echo session_id();
        return true;
    }//end open
	
 	/**
	 * session 关闭操作 (读取完毕)
	 * @return void 
	 * @access public	 
	 */
    public static function sessionClose() {
        
        return true;
    }//end sessionClose
 
 	/**
	 * session 读操作 
	 * @return array 返回要读取的session数据 
	 */
    public static function sessionRead($sesskey) {		

		$_cache = getCache();
		return $_cache->get($sesskey);
	}//end sessionRead
	
	/**
	 * session 写操作 
	 * @return void 
	 * @access public	 
	 */
    public static function sessionWrite($sesskey, $data) {

		$_cache = getCache();
		return $_cache->set($sesskey,$data,0,SESSION_TIME);	
	}//end sessionWrite
	
	/**
	 * session 销毁 
	 * @return void 
	 * @access public	 
	 */	
	public static function sessionDestroy($sesskey) {

		$_cache = getCache();	
		return $_cache->delete($sesskey);
	}//end sessionDestroy
	
	/**
	 * session 垃圾清理 
	 * @return void 
	 * @access public	 
	 */	
	public static function sessionGC($maxlifetime = null) {
	
		return true;
	}//end sessionGC
}


?>